Adjustable athletic training system

ABSTRACT

An athletic training system includes a position processor which can be mounted on the head of an athlete by means of, for example, a head band. The position processor includes a sensor in the form of two tilt sensors mounted at right angles to each other. The direction of tilt is sampled by a microprocessor as output voltages from the sensors for further processing. Software of the microprocessor processes the sensed directions by filtering and hysterisis algorithms in order to eliminate rapid changes of state of the switches of the sensor due to sporadic movement caused by the motion of the athlete. The positional information is conveyed to the athlete as a pattern of lights and tones. Proper and improper head positions are indicated for a plurality of directions of tilt. The training system is user controllable by means of rotary switches to adjust, among other things, the level of sensitivity of the system. The system can also self-center by adjusting all sampled directions by a sampled reference value.

CROSS-REFERENCE TO RELATED APPLICATION

This is a continuation-in-part of Ser. No. 07/976,175, filed Nov. 13,1993, "Athletic Training System", now U.S. Pat. No. 5,300,921, issuedApr. 5, 1994.

FIELD OF THE INVENTION

This invention relates generally to systems for monitoring bodypositions, and more particularly, to a training system for tennisplayers.

BACKGROUND OF THE INVENTION

It is a problem to reliably and accurately monitor the position of ahuman body during various activities. For example, is important forathletes to monitor and maintain proper body position while performingor training for athletic events. In the game of tennis, it isparticularly important for the tennis player to keep his or her head inwhat is known as a "head-up" position, not only when approaching theball, but also while stroking the ball with the racquet. Professionaltennis players recognize that maintaining a proper head-up position is akey factor in perfecting one's proficiency in the game. It is a problemto provide the tennis player or tennis coach with visual or audible cuesto indicate that the player's head is in the proper head-up position.

Numerous systems are known in the prior art for indicating a player'shead position during sports activities. However, the known systemsgenerally require substantial set-up in order to operate properly.Furthermore, the known systems generally are best suited for sportsactivities where the player's body is in a relative static position, andhead movement is relatively infrequent, and the head position is onlycritical for a short period of time.

For example, a number of training systems are known for golf playerswhich give an indication if the golf player lifts his head prematurelyduring a golf swing. That is, the device mounted on the golf player'shead simply gives an alarm when it senses any movement of the head. Oneproblem with this type of device is that a considerable amount of timemay be required to properly align the device with the position of thegolfer's head.

The game of tennis, unlike golf, requires that the player moves rapidlyon the court, frequently shifting body position, with sudden stops andstarts, while responding to the celeritous movement of the tennis ball.As the player moves, the head is likely to bob up, down, and sidewayswith relative frequency, and thus, known training systems would toooften give erroneous positional information, making them difficult andannoying to use.

Therefore, there is a need for a training system which can reliablymonitor and indicate head positions while the tennis player moves on thecourt. Furthermore, it is desirable that such a system be simple tooperate. Additionally, it is desired that the training system can beprogrammatically adjusted to give proper positional information withoutrequiring physical alignment to the athlete's head.

SUMMARY OF THE INVENTION

An athletic training system, that is hardware and software, is providedfor helping an athlete maintain a proper body position. Morespecifically, the training system can be used to monitor the headposition of an athlete, such as a tennis player, while playing tennis.Head positions being the direction of tilt, from the vertical axis ofthe head. A substantial vertical alignment of the head with the rest ofthe body, known as a head-up position, being deemed a proper headposition for playing tennis, and a significant deviation from vertical,in any direction, being deemed an improper head position. The systemincludes a position processor which can be mounted on the head of anathlete by means of, for example, a head band.

The position processor can include an inexpensive position sensor in theform of a twelve position mercury switch. The mercury switch includes amercury droplet which contacts the pins of the switch if the sensor isdisplaced or tilted from an essentially horizontal position in anydirection. The number of pins concurrently contacted by the mercurydroplet varies with the relative severity or angle of tilt of thesensor. The ON/OFF states of the switches of the sensor are sampled by amultiplexer under the control of a microprocessor. The multiplexerpresents the ON/OFF states to the microprocessor for further processing.Software of the microprocessor processes the sensed ON/OFF states andconveys the processed states as positional information to the athlete byusing a visual and audio unit. The visual unit includes a plurality ofindicator lights for displaying positional information. The audio unitincludes a tone generator, or optionally, a digital voice synthesizer toconvey positional information to the user as readily distinguishabletones. Proper and improper head positions are indicated for a pluralityof directions of tilt. The system uses software filtering and hysterisisalgorithms in order to eliminate rapid changes of state of the switchesof the sensor due to sporadic movement caused by the motion of theathlete. The system indicates whether the head is improperly tilted indirection quadrants, e.g., forward, backward, left, or right, or whetherthe head is properly positioned in a head-up position with the axis ofthe head being aligned substantially vertical.

In another embodiment of the invention, the position sensor includes twotilt sensor mounted at right angles to each other. The tilt sensors canbe in the form of accelerometers or curved glass leveling tubes filledwith a fluid and air bubble. An infra-red light source and two infra-reddetectors mounted adjacent to the tube are used to measure the relativeposition of an air bubble in the fluid. The position of the air bubbleindicating the amount of tilt.

The first and second tilt sensors each produce an output voltage whichis continuously proportional to the amount of tilt in the Cartesian "x"and "y" direction, respectively. The output voltages can be converted todigital signals by an analog to digital convertor, and the digitalsignals can be processed to produce the direction and magnitude of tilt.For example, if the voltages sampled from the tilt sensors are equal insign and magnitude, the direction of tilt is halfway between thesensors. The voltage levels indicate the magnitude of tilt.

In a further embodiment of the invention, the training system can beprovided with a self-centering feature to make the system easier to use.After the training system is mounted on the athlete's head, and it hasbeen determined that the head is in the proper position, calibrationvoltage samples are taken from the tilt sensors to determine base orreference values. Any subsequent samples during actual use are thenadjusted by the base or reference values, so that the tilt of theathlete's head can be given as a relative displacement of the head fromthe proper initial position, without the user having to manually alignthe device with the true vertical axis of the body.

In addition, the microprocessor is provided with an angle/sensitivityselector and a quadrant selector both implemented as a hex rotaryswitches which can be manipulated by the user. The angle/sensitivyselector allows the user, depending on his or her ability and quicknessof movement, to select the relative angle of tilt which should beindicated, and the sample rate. The sample rate determining the relativesensitivity of the tracing system. The quadrant selector is used toselectively suppress the conveyance improper head positions forpredetermined directions. The training system also includes a powertime-out feature, to conserve power, if no movement is detected in apredetermined time period.

These and other features and advantages of the present invention willbecome apparent from a reading of the detailed description inconjunction with the attached drawings in which like reference numeralsrefer to like elements in the several views.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective side view of the tennis training systemaccording to the present invention;

FIG. 2 is a top cross sectional view of head positions of the user ofthe system of FIG. 1;

FIG. 3 is a top level block diagram of the system of FIG. 1;

FIG. 4 is a circuit diagram of the system of FIG. 1;

FIG. 5 is a cross sectional view of a position sensor used with thesystem of FIG. 1;

FIG. 6a, 6b, and 6c show the sensor of FIG. 5 at various angles of tilt;

FIG. 7 is a block diagram of a polling procedure;

FIG. 8 illustrates the registers maintained by the polling procedure ofFIG. 7;

FIG. 9 is a block diagram of an interrupt procedure;

FIG. 10 shows an alternative embodiment of the system of FIG. 1;

FIG. 11 shows a position sensor having two tilt sensors mounted at rightangles to each other; and,

FIGS. 12a and 12b show tilt sensors in the form of an accelerometer andleveling tube, respectively.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 is a side view of a tennis training system embodying the presentinvention as it would be worn on the head of a tennis player. The systemis used to teach the tennis player to maintain a proper "head-up"position while playing tennis.

The system includes a position processor 2, mounted on a head band 3. Itshould be apparent to one skilled in the art, that other means can alsobe used to mount the position processor 2 on a tennis player's head. Forexample, the position processor 2 can be fixed to a cap worn by thetennis player.

As an introduction, and to facilitate the understanding of the detaileddescription, the gross characteristics and operation of the trainingsystem during tennis playing will first be described. This introductionwill be followed by a detailed description of the various elements ofthe system and their operations.

During the playing of tennis, it is important that the player's head ismaintained in an head-up position. That is, the axis of the head ismaintained substantially vertical. When the head is so positioned, theplayer can easily track the rapidly moving ball, and balance is alsoimproved. If the head is not positioned in a proper head-up position theplayer's performance is generally deteriorated.

FIG. 2, is a schematic cross section, of the head 5, as seen from abovethe tennis player. For the purpose of the present invention, improperpositions of the head are classified into four quadrants, eachapproximately ninety degrees in extent, for example, the quadrants, 5a,5b, 5c, and 5d, generally labeled "FORWARD", "BACKWARD," "LEFT," and"RIGHT." FORWARD is the position when the head 5 of the tennis player istilted generally forward, e.g., face down, or towards the ground. Theother positions likewise refer to the head 5 being tilted either to theback (BACKWARD), e.g., face upwards to the sky, LEFT (left ear lowerthan left ear, or RIGHT (right ear lower than left ear). As previouslystated the head 5 is properly positioned when the axis of the head,indicated by reference numeral 6, is maintained substantially vertical,that is, neither FORWARD, BACKWARD, LEFT, nor RIGHT.

Now again with reference to FIG. 1, the positions of the head areconveyed to the tennis player by a visual unit and an audio unit,generally indicated by dashed lines 10 and 20, respectively. The visualand audio units, 10 and 20 are used, as will be described in greaterdetail herein, to convey positional information of the head to thetennis player, or to a person who is teaching the tennis player, such asa professional tennis coach. The positional information is sensed by aattitude and angle sensor 100 (FIG. 5) and processed by an electroniccircuit (FIG. 4), including a microprocessor 40 running software (FIG. 7and 9).

The visual unit 10 includes five light emitting diodes (LEDs), 11-15.LEDs 11-14 emit red light, and LED 15 emits green light. Depending onthe position of the tennis player's head, the light patterns displayedare as follows: if the head is FORWARD, LEDs 11 and 12 are turned on; ifthe head is tilted BACKWARD, LEDs 13 and 14 are turned on; if the headis tilted LEFT, LEDs 11 and 13 are turned on; and if the head is tiltedRIGHT, LEDs 12 and 14 are turned on. Otherwise, if the head is in theproper head-up position, or not tilted in any direction, the green LED15 is on. It should be apparent to one skilled in the art that otherlight patterns and colors may also be used.

In conjunction with the positional information conveyed by the visualunit 10, the audio unit 20 generates audible tones: a 3000 Hz tone whenthe head is tilted FORWARD; a 1500 Hz tone when the head is tiltedBACKWARD; a pulsed 3000 Hz tone if the head is tilted LEFT; and a pulsed1500 Hz tone when the head is tilted RIGHT. No tone is generated whenthe head is substantially vertical. In an alternative embodiment, theaudio unit 20 by means of a digital voice synthesizer emits the words"FORWARD", "BACKWARDS", "LEFT", and "RIGHT" to indicate the positions ofthe head.

Now first with reference to FIG. 3 the functional circuit blocks of theposition processor 2 are described. The position processor 2 includes amicroprocessor 40, a position sensor 100, a multiplexer (MUX) 41, anangle/sensitivity selector (ASSEL) 42, a quadrant selector (QSEL) 44, aclocking circuit 45, and a power on/off circuit 46. Also shown in FIG. 4are the visual unit 10 and the audio unit 20.

Now also with reference to FIG. 4, the position processor 2 is describedin greater detail. In the preferred embodiment, the microprocessor 40 isa Motorola MC68HC705J2. The microprocessor 40 includes 2K bytes ofmemory for storing data and instructions, 64 general purpose registers,and input ports 40a and output ports 40b, for receiving and sendingdata, respectively.

The position sensor 100 will be described in further detail with respectto FIGS. 5 and 11. In one embodiment, as shown in FIG. 5, the positionsensor 100 is a conventional twelve position mercury switch. That is,the position sensor 100 includes 12 sensing ON/OFF switches 101-112. Thesensor 100 is mounted in the position processor 2, so that when theprocessor 2 is positioned on the head of the tennis player, the sensoris essentially level, and none of the ON/OFF switches of the mercuryswitch are in an ON position.

One side of each of the switches 101-112 is connected to the MUX 41 viasense lines 41c, the other side is connected to the microprocessor 40via sensor enable line 40v. The switches 101-112 of the sensor 100 areselected by the microprocessor 40 via the MUX 41. In the preferredembodiment, the MUX 41 is implemented with two National CD4052multiplexer circuits 41a and 4lb. Each of the circuits 41a and 41bincludes eight sense lines 41c which are controlled from some of theoutput ports 40b of the microprocessor 40 by the select lines 41d topresent switch information (ON/OFF states) to the input ports 40a of themicroprocessor 40 on data lines 41e, each of the data lines 40e alsoconnected to ground via a 10K ohm resistor 40p.

Twelve of the sixteen (2×8) sense lines 41c are used for the switches101-112 of the sensor 100, the remaining four sense lines 41c are usedfor the ASSEL 42. The QSEL 44 is connected directly to the input ports40a of the microprocessor 40 via data lines: 41e.

The ASSEL 42 and QSEL 44 are implemented by using two conventionalsixteen position (hex) rotary switches 42s and 44s, respectively.Suitable switches 42s and 44s are, for example, MORS ASC 65503 switches.The ASSEL 42 is implemented by using the switch 42s, and the QSEL 44 isimplemented by using switch 44s. The sixteen switch positions (0-15) areindicated by various combinations of four ON/OFF switches, that is 2⁴ or16 different combinations of the switch 42s and 44s are possible. Forexample, position "0" is indicated as OFF, OFF, OFF, OFF, position "1"as OFF, OFF, OFF, ON, and so forth.

The QSEL 44 also includes four diodes 44d configured in the circuit toallow independent isolation of switches 44s when read by themicroprocessor 40.

The clocking circuit 45 includes a 4 MHz ceramic resonator 45a. Theclocking circuit 45 also includes a 4.7 Mohm resistor 45b and two 25 ofcapacitors 45c configured conventionally. The output of the clockingcircuit 45, that is, a 4 MHz clock signal, is connected to themicroprocessor 40 via lines 46d.

The power on-off circuit 46 includes a 4.5 V battery 46a and apush-button power ON/OFF switch 46b. The resistor 46c and the capacitor46d of the power on/off circuit 46 are, respectively, 10K ohm and 0.1micro farads. The power on/off circuit 46 is connected to themicroprocessor 40 via line 46e.

The visual unit 10 includes the LEDs 11-15, one side of each LED 11-15connected to the output ports 40b of the microprocessor 40, and theother side of each of the LEDs 11-15 connected to ground via a 150 ohmresistors 10b.

The audio unit 20 is in the form of a piezo electric transducer 20a. Oneside of the transducer 20a is connected to one of the output ports 40bof the microprocessor 40, and the other side of the transducer 20a isconnected to ground. In an alternative embodiment, the audio unit 20 isin the form of a digital voice synthesizer, which generates the words"forward," "backward," "left," and "right" to indicate the position ofthe head.

The electrical operation of the position processor 2 is first described.This description will be followed by a description of the software, inthe form of instructions and data, permanently stored in the memory ofthe microprocessor 40, which is used to control and process theelectrical signals of the position processor 2.

The position processor 2 is activated by the user, for example thetennis player pushing the power ON/OFF switch 46b of the power on/offcircuit 46 to an "ON" position. This action causes the micro-processor40 to exit a "sleep" mode and enter an "active" mode to power thevarious circuits 41-46, 10, and 20 of the position processor 2. Theclock circuit 45 generates the necessary clock signal to operate themicroprocessor 40 via lines 46d.

The supply of power to the microprocessor causes a hardware interruptwhich activates the execution of software. The software of themicroprocessor 40 is used to periodically sample the ON/OFF states ofthe position sensor switches 101-112, and the ON/OFF states of theswitches 42s and 44s of the ASSEL 42 and the QSEL 44 by appropriatelycontrolling the select lines 41d of the MUX 41. The ON/OFF states of theposition sensor 100 switches 101-112, and the ASSEL 42 and the QSEL 44switches 42s-44s are presented on data lines 41e to the input ports 40aof the microprocessor 40. The switch positions (ON or OFF) are processedby the software, and appropriate signals are supplied via the outputports 40b to the visual unit 10 and the audio unit 20 to give positionalinformation to the user. The purpose and operation of the ASEL 42 andthe QSEL 44 will be described with reference to FIGS. 7 and 8.

Now with reference to FIG. 5, the position sensor 100 is furtherdescribed. The position sensor 100, as previously stated can be in theform of a miniature twelve position mercury switch. Such switches arewell known in the art, and the basic construction and operation of thesensor 100 are only summarized here to facilitate an understanding ofthe present invention. Sensors of this type generally include anelectrically conductive case 120, in the form of an inverted metalliccan, positioned on a substantially planar dielectric mounting base,generally indicated by reference numeral 121.

A droplet of mercury, generally indicated reference numeral 122, is freeto move inside the case 120. Twelve electrically conductive pins 101-112are circularly positioned, equal distant apart on the mounting base 121.The pins 101-112 protrude through the base 120 so that they mayexternally connect to the sense lines 41c of the MUX 41 of FIG. 4. Eachof the pins 101-112 provide one side of an ON/OFF switch, and the case120 provides the other side via line 40v.

The mercury droplet 122 is the means used to selectively connect thevarious pins 101-112 to the case 120 to indicate ON states. When themercury droplet 122 is simultaneous touching the case 120 and any of thepins 101-112, electrical current can flow from the case 120 to the pins101-112 to indicate an ON state, otherwise an OFF state is indicated.

When the mounting base 121 is essentially horizontal or level, themercury droplet 122 is generally in the middle of the mounting base 121,as shown in FIG. 5, and all of the pins 101-112 of the sensor 100 are inan OFF state. However, if the sensor is tilted in any direction, theforce of gravity causes the mercury droplet 122 to seek a lower positionon the mounting base 121 and consequently one or more of the pins101-112 will be shorted to the case 120 by the mercury droplet 122 toindicate an ON state.

As shown in FIG. 6a, for slight angle of tilt of the sensor 100,approximately in the range of about 5 to 15 degrees, only a single oneof the pins 101-112, for example pin 108, will be in an ON state. Thatis, the particular pin 108, indicates the direction of tilt.

As shown in FIG. 6b, when the sensor 100 is tilted to a greater angle,for example, in the range of about 15-25 degrees, more of the mercurydroplet 122 will flow towards the periphery of the case 120, and two ofthe pins 101-112, for example pins 107-108, will be in an ON state toindicate the direction of tilt.

FIG. 6c shows the sensor 100 tilted to an even greater angle, forexample the tilt being an angle greater than about 25 degrees, all ofthe mercury droplet 122 will be pooled along the periphery of the case120, and as many as three of the pins 101-112, for example pins 107-109,will be in an ON state. Obviously, variations in the manufacture of thesensor 100 or the volume of the mercury droplet 122 may give differentresults.

It should now be apparent that the sensor 100 can be used to indicatethe direction of tilt, as well as, the relative severity or angle oftilt of the sensor 100. In other words, the circular position of thepins 101-112 which are in an ON state give the general direction oftilt, and the number of the pins 101-112 that are ON give the relativeangle of tilt of the sensor 100. Note that at any one time either 0, 1,2, or 3 pins in an ON state, and that such pins are always adjacent.

Although the sensor 12 is capable of sensing twelve different directionsof tilt, one direction for each of the pins 101-112, for the purpose ofthe invention, and as shown in FIG. 5, the pins 101-112 of the sensor100 are arbitrarily grouped into four groups 100a-100d of three pinseach, corresponding to the quadrants 5a-5d, respectively, as shown inFIG. 2. That is, the pins 101-103 in quadrant 100a correspond to theFORWARD head position (5a), pins 107-109 (100b) to the BACKWARD headposition (5b), the pins 110-112 (100c) to LEFT head position (5c), andthe pins 104-106 (100d) to RIGHT head position (5d). In other words, ifany of the pins 101-112 in the various quadrants 100a-100d are in an ONstate, the ON states of the pins 101-112 can be used to determine thedirection of tilt of the head of the tennis player. The number of thepins 101-112 that are on in one the quadrants 100a-100d of the sensor100 indicate the relative angle of tilt.

At this point it is probably appreciated that when the positionprocessor 2 is mounted on the head of an active tennis player vigorouslychasing an elusive tennis ball, the mercury droplet 122 of the sensor100 is likely to bounce around inside the case 120 in a seemingly randomand sporadic fashion. Therefore, merely sampling the ON/OFF states ofthe pins 101-112, in and of itself, is not disposed to give accuratepositional information about the position of the head of the tennisplayer.

Therefore, to make sense out of this disorder, a software program isprovide to sample, process, filter, the sampled ON/OFF states of theswitches 101-112 of the sensor, and to display the thus processed ON/OFFstates as positional information to the user. Furthermore, the softwarepermits the user to selectively control the sensitive of the positionprocessor 2, and to select the manner in which positional information ispresented by setting the switches of the angel/sensitivity selector(ASEL) 42 and the quadrant selector (QSEL) 44 appropriately.

The software includes a polling procedure for sampling and processingON/OFF states collected from the switches 42s44s, and 101-112, and aninterrupt procedure to convey the processed ON/OFF states of theswitches to the user.

FIG. 7 shows the steps of the polling procedure 50. The pollingprocedure will be described also with reference to FIG. 8 which showsthe registers maintained by the polling procedure 50.

The registers of FIG. 7 include a sampling register (SAM-REG) 150 havingtwelve bits 151-162, each bit corresponding to one of the switches101-112 of the sensor 100, respectively. A logical "0" in a bitindicating on OFF state, and a logical "1" indicating an 0N state of anyone of the switches 101-112.

There are twelve raw count registers (CNTREG) 201-212, one register foreach of the bits 151-162 of the SAMREG 150, respectively. Each of theCNTREGs 201-212 can store a value in the range of 0 to 255.

A processed count register (PRCREG) 300 having twelve bits 301-312, onefor each of the CNTREGs 201-212 respectively. And, a quadrant register(QUADREG) 400 including four bits. 401-404, corresponding to groups ofthree bits of the PRCREG 300. That is, bits 301-303 representing aFORWARD (5a) position, bits 304-306 representing a RIGHT (5d) position,bits 307-309 representing a BACKWARD (5b) position, and bits 310-312representing a LEFT (5c) position. Similarly, the bits 401-404 of theQUADREG also represent the four possible positions of the head.

Also included as registers are an angle and sensitivity selectorregister (ASREG) 420 having four bits 421-424, and a quadrant selectorregister (QREG) 440 having four bits 441-444. Registers 420 and 440 arefor storing the sampled ON/OFF states of the ASSEL 42 and the QSEL 44,respectively.

The QREG 440 is used as follows, each of the bits 441-444 represents thehead position quadrants FORWARD (5a), RIGHT (5d), BACKWARD (5b), andLEFT (5c) of FIG. 2. Quadrant information as indicated in the bits401-404 of the QUADREG 400 will only be displayed if the correspondingbit in QREG 440 is also set to a logical "1," otherwise the quadrantinformation in QUADREG 400 will not be displayed. Effectively, the bits441-444 of the QREG 440 are used as a logical AND function. As anexample, if bits 441 and 443 of the QREG 420 are set to a logical "1",e.g., the binary value of QREG 420 is "1010" (i.e., decimal 10), that isrotary switch 42s is set to position "10", positional information willonly be conveyed to the user if the head is tilted either FORWARD orBACKWARD.

The bits 421-424 of the ASREG 420 are used to select predeterminedcombinations of angle settings and sensitivity with the ASSEL 44 assummarized in Table 1 below. The angle of tilt of the sensor 100determined by an arbitrary angle setting, in the range of 1 to 3, theangle settings corresponding to the number of the pins 101-112 that arein an ON state. The sensitivity determined by the rate at which thesensor 100 is sampled. Sampling the various switches 100, 42s and 44s ata higher rate making the system more sensitive, or more quicklyresponsive to changes in positions of the head. Sampling the switches ata lower rate makes the system less sensitive to changes in position. Therate is determined by multiplying a predetermined time delay, forexample 0.4 ms by a predetermined sampling rate selected from values 5,25, 50, 75, 100, 150,170, or 250. The delay period being a period oftime between successive sampling of the sensor 100. A sampling rate of 5corresponding to the sensor 100 being sampled approximately every 2 ms,and a sampling rate of 25 causing the sensor to be sampled every 50 ms,and so forth.

The particular combinations of sampling rate and angle were empiricallydetermined by use of the tracing system with a variety of players ofdifferent skill level and relative body motion. It should be obvious toone skilled in the art, that many other combinations are also possible.

                  TABLE 1                                                         ______________________________________                                        Switch    Logical              Sampling                                       Position  States       Angle   Setting                                        ______________________________________                                        0         0000         1       5                                              1         0001         2       5                                              2         0010         3       5                                              3         0011         1       25                                             4         0100         2       25                                             5         0101         1       75                                             6         0110         2       75                                             7         0111         3       50                                             8         1000         1       100                                            9         1001         2       100                                            10        1010         1       150                                            11        1011         3       75                                             12        1100         2       150                                            13        1101         3       100                                            14        1110         3       170                                            15        1111         3       250                                            ______________________________________                                    

All of the registers 150, 201-212, 300, 400, 420, and 440 areinitialized to logical "0" when the position processor 2 is turned on.

Now also with reference to FIG. 7, in step 51 of the procedure 50,switches 42s and 44s are sampled as to their ON/OFF states. Theresulting ON/OFF states are stored in ASREG 420 and QREG 440,respectively, as bit patterns consisting of logical "0"s and logical"1"s.

In step 52, the polling procedure 50 determines the appropriate pollingrate as indicated by the contents of ASREG 420 and delays execution ofthe procedure 50 for that period of time to achieve the desired pollingrate or sensitivity of the training system. At the expiration of thepredetermined time delay period, step 53 is executed.

Step 53 is used to sample the ON/OFF states of the switches 101-112 ofthe sensor 100. The switches 101-112 are sampled by the instructions ofthe step 52 selecting the switches 101-112 in turn via the MUX 41. TheON/OFF state of each of the switches 101-112 are stored in the bits151-162 of the SAMREG 150, a logical "0" or "1" indicating,respectively, either on OFF or ON state of the corresponding switch101-112 of the sensor 100 during a polling cycle. A polling cycle beingone loop through the steps of the polling procedure 50.

Step 54 is used to maintain the raw counts of CNTREGs 201-212. TheCNTREGs 201-212 are essentially used to indicate how long (or short)each of the switches 101-112 have been either ON or OFF. That is, instep 54, each of values stored in the CNTREGs 201-212 is incremented ifthe corresponding bit 151-162 of SAMREG 150 is a logical "1," otherwisethe value is decremented. Note that the values stored in CNTREG 201-212are not incremented over 255, nor decremented below 0. In other words, ahigh count in one of the registers 201-212 is indicative that aparticular one of the switches 101-112 is more ON than OFF, a low countindicating the opposite. Or stated otherwise, a high count indicatesthat the head of the tennis player tends to be tilted in the directionof the pins 101-112 with the highest count.

In step 55, the counts stored in the CNTREG 201-212 are processed togive a general indication if one of the switches 101-112 is more ON thanOFF. The counts are processed as follows. If one of the CNTREGs 201-212stores a count greater than a HIGH threshold, the corresponding switch101-112 is deemed to be mostly ON, and therefore, the corresponding bit301-312 in the PRCREG 300 is set to a logical "1". If the count in onethe CNTREGSs 201-212 is less than a LOW threshold the corresponding oneof the bits 301-312 of the PRCREG is set to logical "0" to indicate thatthe corresponding switch 101-112 was mostly OFF. If the count is betweenthe LOW and HIGH threshold, the corresponding bit 301-312 of the PRCREG300 is not changed. The LOW and HIGH thresholds are spaced apart toprovide sufficient hysterisis to filter out sporadic changes of ON andOFF states of the switches 101-112 induced by the spurious movement ofthe mercury droplet 122 inside the sensor 100 as the user moves about.The HIGH and LOW thresholds, in the preferred embodiment, as empiricallydetermined to give good results, are set to counts of 192 and 64,respectively.

In step 56, the processed raw counts are further evaluated as follows.If one, two, or three adjacent bits in any one group of three bits301-303, 304-306, 307-309, and 310-312 of the PRCREG 300 are set to alogical "1" proceed to step 57. If two adjacent bits in any two adjacentgroups of bits are set, shift the bits 301-312 right one position, withend around carry, and proceed with step 57. If two adjacent bits are setin one group and one bit is set in an adjacent group, clear the singlebit and set the third bit in the group already having two bits sets,proceed with step 57.

In step 57, the quadrant register QUADREG 400 is set to the quadrantpositions, FORWARD (5a), BACKWARD (5b), LEFT 5c, and RIGHT (5d) bysetting the corresponding bits 401, 403, 402 and 404 of QUADREG 400 asfollows. One of the bits 401-404 in QUADREG 400 is set to a logical "1"if any of the bits of the corresponding groups of bits are set in PRCREGto a logical "1" as evaluated in step 56. Otherwise, set thecorresponding bit to logical "O".

Step 58 determines angle of tilt of the sensor 100. If the angle settingis 3, all of the bits in a quadrant group of three in the PRCREG 300must be set to logical "1" to indicate that the sensor 100 is tilted toa greatest angle. Otherwise set the corresponding bit in QUADREG 400 tological "0". If the angle setting is 2, at least two bits in a quadrantgroup must be logical "1" in PRCREG 300, otherwise clear thecorresponding bit in QUADREG 400. And, if the angle setting is 1, anyone bit of a group of quadrant bits being logical "1" is sufficient toindicate that the sensor 100 is tilted at least a minimal angle.

After the completion of step 58 of polling procedure 50, executionproceeds in a repetitive and circular fashion with step 51. The functionof the polling procedure is therefore, to sample the ON/OFF states ofthe switches at a predetermined sampling rate, the sampling ratedetermining the sensitivity of the training system. In addition, theprocedure 50 evaluates and processes the sampled ON/OFF states to reducestates to positional information, including the direction and angle oftilt of the head of the user.

FIG. 9 shows the steps of the interrupt procedure 60 of the software ofthe position processor 2. In step 61, the LEDS 11-15 are turned ON orOFF depending on the bits 401-404 of the QUADREG 400 as processed by thesteps 51-58 of the polling procedure 50. That is LEDS 11 and 12 areturned ON if bit 401 is logical "1", LEDS 13 and 14 are turned ON if bit403 is logical "1", LEDS 11 and 13 are turned on if bit 404 is logical"1", and LEDS 12 and 14 are turned ON if bit 402 is logical "1",otherwise if the bits 401-404 are all logical "0", turn on LED 15.

Likewise in step 62, the corresponding audible signals are generated. Inthe preferred embodiment, the pulsed and unpulsed tones at 3000, 1500 Hzare generated by using the internal timers of the microprocessor 40which are initialized to generate interrupts at appropriate frequencies.In addition, in step 63, a 60 second interrupt time-out is maintained,to determine if any changes of positions have occurred in the last 60seconds. If no changes in positions have been detected, the instructionsof step 63 place the microprocessor 40 in a low power sleep state inorder to conserve power.

FIG. 10 shows an alternative embodiment of the invention. In thisalternative embodiment a position sensor 500 includes two tilt sensorsmounted at right angles to each other. The tilt sensors, described belowwith reference to FIG. 11, produce output voltages on lines 502 and 503.The output voltages are continuously proportional to the amount of tiltin the "x" and "y" direction of the two tilt sensors, respectively. Thex and y direction corresponding to the axes along which the two sensorsare mounted.

The output voltages of the two sensors can be converted to a pair ofdigital signals by an analog to digital convertor 501 of themicroprocessor 40. The digital signals can be pairs of data values inthe range of 0 to 255 representing the output voltages of the two tiltsensors. The pairs of data values can be combined by, for example, aninverse tangent function to calculate directional values of the sensorswith respect to the x axis and the y axis. For example, if the voltagesare equal in sign and magnitude the direction of tilt is half-waybetween the right angle at which the sensors are mounted. A highervoltage indicates a greater magnitude of the tilt than a lower voltage.

The directional values can be partitioned into ranges representing, forexample, 30 degrees. Each 30 degree range corresponding to one of thebits 150-162 of the raw count sample register SAMREG 150 of FIG. 8. Inorder to suppress spurious directional signals the filtering andhysterisis method 50 of FIG. 7 can be performed as described above.

FIG. 11 shows the position sensor 500 in greater detail. The sensor 500includes an "X" sensor 504 and a "Y" sensor 505. The sensors 504 and 505are mounted at right angles to each other. The output voltage of the "X"sensor 504 corresponding to the relative angle of tilt along the x-axis,and the "Y" sensor 505 gives the angle of tilt along the y-axis. Thevoltages are presented on lines 502 and 503 for processing by themicroprocessor 40 of FIG. 10.

The tilt sensors 504 and 505 can be in the form of a conventionalaccelerometer 600, as shown in FIG. 12a or, as shown in FIG. 126, afluid-filled curved glass leveling 610 having an infra-red light source620 and two infra-red detectors 630 to measure the relative position ofan air bubble 640 in the fluid 650.

In a further embodiment of the invention, the training system can beprovided with a self-centering feature to make the system easier to useby the athlete. After the training system is mounted on the athlete'shead, and it has been determined that the head is in the properposition, calibrating voltage samples are taken from the tilt sensors504 and 505 to determine base or reference values. In other words,during calibration, the sampled voltages represent the proper positionof the head, regardless of the relative position of the system withrespect to the athlete.

For example, the reference values can be extracted from samples takenduring a predetermined time period, for example 1/2 a second after thesystem is initially activated by the ON/OFF switch 46b of FIG. 4. Thereference samples can be, for example tabularized, and stored in a set130 of reference registers (REFREG) 131-142, for example, as shown inFIG. 8.

Any subsequent samples during actual use of the system can then adjustedor normalized by the base or reference values of REFREG 131-142, so thatthe position of the athlete's head can be given as the relative tilt ofthe head from the proper position. By calibrating or "self-centering"the system in this manner the user does not have to do any tediousrepositioning of the device during use. Instead the user merely mountsthe training system on the head, assumes a proper head-up position, andactivates the device to calibrate it, and starts using the trainingsystem.

The invention has now been described with reference to a specificembodiment for training athletes. Other embodiments, such as a bodymonitoring systems for use during therapeutic physical rehabilitation,or systems for monitoring the head positions of drivers, should also beapparent to those skilled in the art. It is therefore not intended thatthis invention be limited except as indicated by the claims appended.

What is claimed is:
 1. An apparatus, for indicating the position of abody part, comprising:a position sensor for sensing a direction andmagnitude of tilt, said position sensor including a first tilt sensormounted at right angles to a second tilt sensor, said first tilt sensorproducing a first output voltage and said second tilt sensor producing asecond output voltage, said first and second output voltagesproportional to the direction and magnitude of tilt of said first andsecond tilt sensors; means for mounting said sensor on the body part;means, coupled to said position sensor, for sampling said first andsecond output voltages as digital values; means for converting saiddigital values to an angular position; means for counting the length oftime said position sensor is positioned at a particular angularposition; means, responsive to said means for counting, for signallingsaid particular angular position.
 2. The apparatus as in claim 1 whereinsaid first and second tilt sensors are accelerometers.
 3. The apparatusas in claim 1 wherein said first and second tilt sensors include afluid-filled glass tube and an infra-red detector.
 4. The apparatus asin claim 1 wherein said means for counting includes a microprocessor. 5.The apparatus as in claim 1 wherein said means for signalling includes avisual unit and an audio unit.
 6. The apparatus as in claim 5 whereinsaid visual unit includes five light emitting diodes, and said audiounit includes a speaker.
 7. The apparatus as in claim 1 including meansfor storing a particular set of digital values as reference values, saidreference values associated with a reference position, and means foradjusting subsequently sampled digital values by said reference values.8. An apparatus, for training an athlete, comprising;means, mounted onthe athlete, for sensing directions and magnitudes of tilt as aplurality of pairs of voltage values; means for converting each pair ofvoltage values to a pair of digital values; means for selecting aparticular pair of digital values as reference values; means foradjusting each subsequently sampled pair of digital values by saidreference values to generate an adjusted pair of digital values; meansfor converting said adjusted pair of digital values to a direction oftilt signal and a magnitude of tilt signal.
 9. The apparatus as in claim8 wherein said means for sensing includes a pair of tilt sensors mountedat a right angle to each other.
 10. The apparatus as in claim 8 whereinsaid means for adjusting includes a microprocessor.
 11. The apparatus asin claim 10 wherein said microprocessor includes means for filteringsaid direction of tilt signal by a digital hysterisis algorithm.
 12. Theapparatus as in claim 8 further including a visual unit and an audiounit for indicating said direction of tilt signal and said magnitude oftilt signal.
 13. A method for sensing the position of a body part,comprising the steps of:sensing a reference direction and magnitude oftilt by a tilt sensor mounted on the body part; sensing an arbitrarydirection and magnitude of tilt by said tilt sensor; adjusting saidarbitrary direction and magnitude of tilt by said reference directionand magnitude of tilt to generate a normalized direction and magnitudeof tilt; signaling said normalized direction and magnitude of tilt. 14.The method as in claim 13 wherein said sensor produces a pair of voltagesignals proportional to the direction and magnitude of tilt of saidsensor, and further including the step of converting said pair ofvoltages to a pair of digital values.
 15. The method as in claim 13further including the steps of determining the length of time saidsensor senses said normalized direction of tilt, setting a highthreshold time, and signaling said normalized direction and magnitude oftilt if the length of time said sensor senses said normalized directionof tilt exceeds said high threshold time.
 16. The method as in claim 13further including the step selecting a preferred direction of tilt, andsignaling said normalized direction and magnitude of tilt if said sensoris approximately tilted in said preferred direction of tilt.
 17. Themethod as in claim 13 further including the step of selecting athreshold magnitude of tilt, and signaling said normalized direction andmagnitude of tilt if said normalized magnitude of tilt exceeds saidthreshold magnitude of tilt.